package com.cloud.api.domain.report;

import com.baomidou.mybatisplus.annotation.TableField;
import com.cloud.api.myenum.AlarmTypeEnum;
import com.cloud.api.utils.ExcelUtils;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * @author 杨斌
 * 2025-01-2025-01-16
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ExcelUtils.ExcelSheet(watermark = @ExcelUtils.Watermark(type = 0)
)
@Schema(description = "报警数据导出")
public class VehicleAlarmReport implements Serializable {

    @Schema(description = "vin")
    @TableField("vin")
    @ExcelUtils.ExcelExport(name = "table.field.vin")
    private String vin;

    @Schema(description = "公告型号")
    @TableField("notice_model")
    @ExcelUtils.ExcelExport(name = "table.field.noticeModel",columnWidth = 18)
    private String noticeModel;

    @Schema(description = "组织机构")
    @TableField("notice_model")
    @ExcelUtils.ExcelExport(name = "table.field.deptName",columnWidth = 18)
    private String deptName;


    private AlarmTypeEnum alarmType;

    @Schema(description = "国标报警类型")
    @TableField("alarm_type")
    @ExcelUtils.ExcelExport(name = "table.field.country.alarmType",columnWidth = 18)
    private String vehicleAlarmType;


    @Schema(description = "国标报警总数")
    @TableField("alarm_count")
    @ExcelUtils.ExcelExport(name = "table.field.country.alarmCount",columnWidth = 18)
    private Integer alarmCount;

    @Schema(description = "企标报警类型")
    @TableField("alarm_type")
    @ExcelUtils.ExcelExport(name = "table.field.enterpriseAlarmType",columnWidth = 18)
    private AlarmTypeEnum enterpriseAlarmType;


    @Schema(description = "企标报警总数")
    @TableField("alarm_count")
    @ExcelUtils.ExcelExport(name = "table.field.enterpriseAlarmCount",columnWidth = 18)
    private Integer enterpriseAlarmCount;

}
